Skip to content

feat: add php-prebuilt plugin - #1188

Open
x-rush wants to merge 1 commit into
asdf-vm:masterfrom
x-rush:add-php-prebuilt
Open

x-rush wants to merge 1 commit into
asdf-vm:masterfrom
x-rush:add-php-prebuilt

Conversation

@x-rush

@x-rush x-rush commented Nov 8, 2026

Copy link
Copy Markdown

Summary

Add the php-prebuilt shortname for a second, complementary PHP plugin: prebuilt, relocatable PHP binaries for frozen EOL versions (5.4.45 through 8.1.34) on linux-x86_64.

This does not change plugins/php. asdf-community/asdf-php is actively maintained and stays the default; it compiles PHP from source via php-build. The new plugin solves a different problem: legacy PHP that no longer compiles on a current distro because of OpenSSL / bison / libxml2 / ICU drift. It installs a checksum-verified, self-contained artifact instead. Users opt in explicitly:

asdf plugin add php-prebuilt
asdf install php-prebuilt 7.4.33
asdf local php-prebuilt 7.4.33

The plugin name is the tool name in asdf, so .tool-versions must use php-prebuilt. Both migration paths have been verified against asdf 0.20.2 and documented in the plugin README.

Scope is deliberately narrow: no macOS and no arm64 artifacts have been built, and no PHP 8.2+ versions are offered. The plugin README states those limits up front.

Checklist

  • Format with scripts/format.bash — the README row is aligned to the existing table and passes Prettier on an LF-normalized copy. No shell scripts were added, so shfmt is not applicable.
  • Test locally with scripts/test_plugin.bash --file plugins/php-prebuilt — OK plugins/php-prebuilt.
  • Your plugin CI tests are green — x-rush/asdf-php run 42501403364: the contract suite (65 checks) plus a real asdf-vm/actions/plugin-test@v4 job that clones the plugin, adds it, installs 7.4.33 from a published artifact and runs php -v. The plugin implements all three required callbacks (list-all, download, install).

@x-rush
x-rush requested a review from a team as a code owner November 8, 2026 16:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant